include "TQuery.thrift"
namespace java com.iqiyi.pps.epg.api.model.web.record

 struct TRecordPlan {
    1:i64 id;
    2:i64 channelId;
    3:i64 colId;
    4:i32 enable;
    5:i32 status;
    6:i32 planType;
    7:string startDate;
    8:string stopDate;
    9:string startDayTime;
    10:string stopDayTime;
    11:i32 repeatCode;
    12:i32 fragmentOutput;
    13:i32 notifyType;
    14:string opUser;
    15:string createTime;
    16:string projectWorkers;
 }

  struct TRecordPlanLibrary {
      1:i64 id;
      2:i64 channelId;
      3:i64 colId;
      4:i32 enable;
      5:i32 status;
      6:i32 planType;
      7:string startDate;
      8:string stopDate;
      9:string startDayTime;
      10:string stopDayTime;
      11:i32 repeatCode;
      12:string opUser;
      13:i32 categoryId;
      14:string createTime;
      15:string colName;
      16:string channelName;
      17:i32 hasAuth;
      18:i32 fragmentOutput;
  }

 struct TRecordPlanPage {
     1:TQuery.TPage tPage;
     2:list<TRecordPlan> result;
 }
  struct TRecordPlanLibraryPage {
      1:TQuery.TPage tPage;
      2:list<TRecordPlanLibrary> result;
  }

   struct TRecordChannelSimple {
         1:i64 id;
         2:string channelName;
         3:string channelCode;
         4:i32 status;
     }

     struct TRecordColSimple {
         1:i64 id;
         2:i64 channelId;
         3:string colName;
     }

    struct TRecordChannelSimplePage {
        1:TQuery.TPage tPage;
        2:list<TRecordChannelSimple> result;
    }
     struct TRecordColSimplePage {
        1:TQuery.TPage tPage;
        2:list<TRecordColSimple> result;
    }

    struct TRecordTaskData{
         1:i64 id;
         2:i64 planId;
         3:i32 taskStatus;
         4:string taskStartTime;
         5:string taskStopTime;
         6:string createTime;
         7:i32 status;
}

     struct TRecordTaskLibrary {
         1:i64 id;
         2:i64 planId;
         3:i32 taskStatus;
         4:string taskStartTime;
         5:string taskStopTime;
         6:string createTime;
         7:i32 status;
         8:i64 channelId;
         9:i64 colId;
         10:string colName;
         11:string channelName;
         12:i32 categoryId;
         13:i32 hasAuth;
     }

      struct TRecordTaskDataPage {
          1:TQuery.TPage tPage;
          2:list<TRecordTaskData> result;
      }
       struct TRecordTaskLibraryPage {
           1:TQuery.TPage tPage;
           2:list<TRecordTaskLibrary> result;
       }

struct TRecordChannel {
    1:i64 id;
    2:string channelName;
    3:string channelCode;
    4:i32 status;
    5:string opUser;
    6:string updateTime;
    7:string createTime;
    8:i32 hasCaption;
}

struct TRecordChannelPage {
    1:TQuery.TPage tPage;
    2:list<TRecordChannel> result;
}


//signal
struct TRecordSignal{
    1:i64 id;
    2:string signalName;
    3:string signalAddress;
    4:i32 priority;
    5:string serverCluster;
    6:string opUser;
    7:string createTime;
    8:i32 status;
}

struct TRecordSignalPage {
    1:TQuery.TPage tPage;
    2:list<TRecordSignal> result;
}

struct TRecordChannelSignal{
    1:i64 id;
    2:i64 signalId;
    3:i64 channelId;
    4:string channelName;
    5:string channelCode;
    6:string signalName;
    7:string signalAddress;
    8:i32 priority;
    9:string serverCluster;
    10:string serverIp;
    11:string opUser;
    12:string createTime;
    13:i32 status;
}

struct TRecordChannelSignalPage {
    1:TQuery.TPage tPage;
    2:list<TRecordChannelSignal> result;
}
struct TRecordSignalPage {
    1:TQuery.TPage tPage;
    2:list<TRecordSignal> result;
}


struct TRecordChannelSignalTable {
    1:i64 recordVideoId;
    2:string videoName;
    3:string colName;
    4:string recordTime;
    5:string channelName;
    6:i32 categoryId;
    7:string createTime;
    8:i32 hasAuth;
    9:i32 videoStatus;
    10:string opUser;
    11:i64 taskId;
    12:i64 videoId;
    13:string serverIp;
}

struct TRecordChannelSignalTablePage {
    1:TQuery.TPage tPage;
    2:list<TRecordChannelSignalTable> result;
}